package com.mtzqc.common.task

interface ITask : Comparable<ITask> {
    val depName: String

    val dependsLib: Array<Class<out ITask>>?

    val depends: Array<String>?

    fun mainThread(): Boolean {
        return true
    }
    val priority: Int

    override fun compareTo(other: ITask): Int {
        return other.priority - priority
    }

    fun executeTask(): Boolean
}